用Seurat包分析文章数据(二) 您所在的位置:网站首页 seurate ^hb包含几个基因 用Seurat包分析文章数据(二)

用Seurat包分析文章数据(二)

2024-07-02 17:52| 来源: 网络整理| 查看: 265

第三单元第十讲:使用Seurat包

载入数据,创建对象代码语言:javascript复制rm(list = ls()) Sys.setenv(R_MAX_NUM_DLLS=999) ## 首先载入文章的数据 load(file='../input.Rdata') # 原始表达矩阵 counts=a counts[1:4,1:4];dim(counts) # 2万多个基因,768个细胞(需要下一步进行过滤) library(stringr) # 样本信息 meta=df > head(meta) g plate n_g all SS2_15_0048_A3 1 0048 2624 all SS2_15_0048_A6 1 0048 2664 all SS2_15_0048_A5 2 0048 3319 all SS2_15_0048_A4 3 0048 4447 all SS2_15_0048_A1 2 0048 4725 all SS2_15_0048_A2 3 0048 5263 all # 按行/基因检查:每个基因在多少细胞中有表达量 fivenum(apply(counts,1,function(x) sum(x>0) )) boxplot(apply(counts,1,function(x) sum(x>0) )) # 按列/样本检查:每个细胞中存在多少表达的基因 fivenum(apply(counts,2,function(x) sum(x>0) )) hist(apply(counts,2,function(x) sum(x>0) ))

按行+按列检查结果

左图显示了:有50%的基因只在低于20个细胞中有表达量,还有许多没有表达量的:

代码语言:javascript复制> table(apply(counts,1,function(x) sum(x>0) )==0) FALSE TRUE 17429 7153 # 存在7000多个基因在任何一个细胞中都没表达

右图显示了:大部分细胞都包含2000个以上的有表达的基因

开始使用CreateSeuratObject构建Seurat对象:

因为Seurat存在两个版本,并且应用都比较多,所以这里会列出两种版本的代码

代码语言:javascript复制# 使用Seurat V3版本(以下简写"V3")(版本3有大量的参数从之前的genes改成了features) sce 0) )>2000) table(apply(counts,1,function(x) sum(x>0) )>4) 有了对象,怎么从中得到矩阵和样本信息呢?代码语言:javascript复制# 得到表达矩阵 # V3 dim(sce@assays$RNA) [1] 14406 693 # 或者更简单的: > dim(sce[['RNA']]) [1] 14406 693 # V2 dim(sce@data) # 得到样本信息 > head([email protected]) orig.ident nCount_RNA nFeature_RNA g plate n_g all SS2_15_0048_A3 SS2 128784 3067 1 0048 2624 all SS2_15_0048_A6 SS2 131208 3037 1 0048 2664 all SS2_15_0048_A5 SS2 207004 3739 2 0048 3319 all SS2_15_0048_A4 SS2 140323 5004 3 0048 4447 all SS2_15_0048_A1 SS2 301161 5117 2 0048 4725 all SS2_15_0048_A2 SS2 311213 5673 3 0048 5263 all 预处理之可视化对feature信息可视化代码语言:javascript复制# V2 VlnPlot(object = sce, features.plot = c("nGene", "nUMI" ), group.by = 'plate', nCol = 2) # V3 plot1


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有